The present invention relates to a SERDES (serializer/deserializer) time domain multiplexing/demultiplexing technique, and more particularly, to a SERDES time domain multiplexing/demultiplexing technique which utilizes circular buffers for multiplexing and demultiplexing and time alignment functions.
At present, popularly used time domain multiplexers operate so as to multiplex serial data stream signals which are aligned in phase. That is, these time domain multiplexers do not allow for clock skew which makes them unusable where it is desired to time domain multiplex two or more serial data stream signals which are not aligned in phase.
Similarly, time domain demultiplexers do not allow for demultiplexing one serial data stream signal into two or more serial data stream signals which are not aligned in phase.
A time domain multiplexing/demultiplexing technique multiplexes N input signals into a single output signal, N being an integer greater than 1, and vice versa. N input signals and N clocks are respectively received and the N input signals are then stored in N respective latches in accordance with the N respective clocks. Outputs of the N latches are sequentially stored in N circular buffers in accordance with the N respective clocks. Outputs from the N circuital buffers are respectively outputted into a multiplexer in accordance with N respective system clocks. One of the respective outputs of the N circular buffers is selectively output to an output latch in accordance with a multiplexer clock input, the output latch latching the output of the multiplexer in accordance with another system clock having a frequency which is N times that of the N input clocks, an output of the output latch providing a time domain multiplexed signal corresponding to the N input signal. A divider outputs an output clock in response to the another system clock.